﻿using System;
namespace Producers.Rr.Xtee.Riik.Ee.Producer.Rr {
    
    
    public partial class IsikSotsikResponse : global::Producers.Rr.Xtee.Riik.Ee.Producer.Rr.IIsikSotsikResponse {
        
        private decimal @__veakood;
        
        private string @__veatekst;
        
        private System.Collections.Generic.List<IsikSotsikResponse.IIsikType> @__isik = new System.Collections.Generic.List<IsikSotsikResponse.IIsikType>();
        
        private System.Collections.Generic.List<IsikSotsikResponse.IDokType> @__dok = new System.Collections.Generic.List<IsikSotsikResponse.IDokType>();
        
        public IsikSotsikResponse() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public IsikSotsikResponse(decimal @veakood, string @veatekst, System.Collections.Generic.List<IsikSotsikResponse.IIsikType> @isik, System.Collections.Generic.List<IsikSotsikResponse.IDokType> @dok) {
            this.@__veakood = @veakood;
            this.@__veatekst = @veatekst;
            this.@__isik = @isik;
            this.@__dok = @dok;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected IsikSotsikResponse(IIsikSotsikResponse @isikSotsikResponse) {
            this.@__veakood = @isikSotsikResponse.Veakood;
            this.@__veatekst = @isikSotsikResponse.Veatekst;
            this.@__isik = @isikSotsikResponse.Isik;
            this.@__dok = @isikSotsikResponse.Dok;
        }
        
        public virtual decimal Veakood {
            get {
                return this.@__veakood;
            }
            set {
                this.@__veakood = value;
            }
        }
        
        public virtual string Veatekst {
            get {
                return this.@__veatekst;
            }
            set {
                this.@__veatekst = value;
            }
        }
        
        public virtual System.Collections.Generic.List<IsikSotsikResponse.IIsikType> Isik {
            get {
                return this.@__isik;
            }
            set {
                this.@__isik = value;
            }
        }
        
        public virtual System.Collections.Generic.List<IsikSotsikResponse.IDokType> Dok {
            get {
                return this.@__dok;
            }
            set {
                this.@__dok = value;
            }
        }
        
        public partial class IsikType : IIsikType {
            
            private string @__isikIsikukood;
            
            private string @__isikPerenimi;
            
            private string @__isikEesnimi;
            
            private string @__isikVallakd;
            
            private string @__isikKylakd;
            
            private string @__isikTanavakd;
            
            private string @__isikTanavanm;
            
            private string @__isikMajanr;
            
            private string @__isikKorternr;
            
            private string @__isikViimatipar;
            
            private string @__isikMperenm;
            
            private string @__isikMeesnm;
            
            private string @__isikIsikKoda;
            
            private string @__isikSaabEestisse;
            
            private string @__isikPostiindeks;
            
            private string @__isikElukRegpe;
            
            private string @__isikIsikuStaatus;
            
            private string @__isikKirjeStaatus;
            
            private string @__isikSynniaeg;
            
            private string @__isikSurmaaeg;
            
            public IsikType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public IsikType(
                        string @isikIsikukood, 
                        string @isikPerenimi, 
                        string @isikEesnimi, 
                        string @isikVallakd, 
                        string @isikKylakd, 
                        string @isikTanavakd, 
                        string @isikTanavanm, 
                        string @isikMajanr, 
                        string @isikKorternr, 
                        string @isikViimatipar, 
                        string @isikMperenm, 
                        string @isikMeesnm, 
                        string @isikIsikKoda, 
                        string @isikSaabEestisse, 
                        string @isikPostiindeks, 
                        string @isikElukRegpe, 
                        string @isikIsikuStaatus, 
                        string @isikKirjeStaatus, 
                        string @isikSynniaeg, 
                        string @isikSurmaaeg) {
                this.@__isikIsikukood = @isikIsikukood;
                this.@__isikPerenimi = @isikPerenimi;
                this.@__isikEesnimi = @isikEesnimi;
                this.@__isikVallakd = @isikVallakd;
                this.@__isikKylakd = @isikKylakd;
                this.@__isikTanavakd = @isikTanavakd;
                this.@__isikTanavanm = @isikTanavanm;
                this.@__isikMajanr = @isikMajanr;
                this.@__isikKorternr = @isikKorternr;
                this.@__isikViimatipar = @isikViimatipar;
                this.@__isikMperenm = @isikMperenm;
                this.@__isikMeesnm = @isikMeesnm;
                this.@__isikIsikKoda = @isikIsikKoda;
                this.@__isikSaabEestisse = @isikSaabEestisse;
                this.@__isikPostiindeks = @isikPostiindeks;
                this.@__isikElukRegpe = @isikElukRegpe;
                this.@__isikIsikuStaatus = @isikIsikuStaatus;
                this.@__isikKirjeStaatus = @isikKirjeStaatus;
                this.@__isikSynniaeg = @isikSynniaeg;
                this.@__isikSurmaaeg = @isikSurmaaeg;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected IsikType(IIsikType @isikType) {
                this.@__isikIsikukood = @isikType.IsikIsikukood;
                this.@__isikPerenimi = @isikType.IsikPerenimi;
                this.@__isikEesnimi = @isikType.IsikEesnimi;
                this.@__isikVallakd = @isikType.IsikVallakd;
                this.@__isikKylakd = @isikType.IsikKylakd;
                this.@__isikTanavakd = @isikType.IsikTanavakd;
                this.@__isikTanavanm = @isikType.IsikTanavanm;
                this.@__isikMajanr = @isikType.IsikMajanr;
                this.@__isikKorternr = @isikType.IsikKorternr;
                this.@__isikViimatipar = @isikType.IsikViimatipar;
                this.@__isikMperenm = @isikType.IsikMperenm;
                this.@__isikMeesnm = @isikType.IsikMeesnm;
                this.@__isikIsikKoda = @isikType.IsikIsikKoda;
                this.@__isikSaabEestisse = @isikType.IsikSaabEestisse;
                this.@__isikPostiindeks = @isikType.IsikPostiindeks;
                this.@__isikElukRegpe = @isikType.IsikElukRegpe;
                this.@__isikIsikuStaatus = @isikType.IsikIsikuStaatus;
                this.@__isikKirjeStaatus = @isikType.IsikKirjeStaatus;
                this.@__isikSynniaeg = @isikType.IsikSynniaeg;
                this.@__isikSurmaaeg = @isikType.IsikSurmaaeg;
            }
            
            public virtual string IsikIsikukood {
                get {
                    return this.@__isikIsikukood;
                }
                set {
                    this.@__isikIsikukood = value;
                }
            }
            
            public virtual string IsikPerenimi {
                get {
                    return this.@__isikPerenimi;
                }
                set {
                    this.@__isikPerenimi = value;
                }
            }
            
            public virtual string IsikEesnimi {
                get {
                    return this.@__isikEesnimi;
                }
                set {
                    this.@__isikEesnimi = value;
                }
            }
            
            public virtual string IsikVallakd {
                get {
                    return this.@__isikVallakd;
                }
                set {
                    this.@__isikVallakd = value;
                }
            }
            
            public virtual string IsikKylakd {
                get {
                    return this.@__isikKylakd;
                }
                set {
                    this.@__isikKylakd = value;
                }
            }
            
            public virtual string IsikTanavakd {
                get {
                    return this.@__isikTanavakd;
                }
                set {
                    this.@__isikTanavakd = value;
                }
            }
            
            public virtual string IsikTanavanm {
                get {
                    return this.@__isikTanavanm;
                }
                set {
                    this.@__isikTanavanm = value;
                }
            }
            
            public virtual string IsikMajanr {
                get {
                    return this.@__isikMajanr;
                }
                set {
                    this.@__isikMajanr = value;
                }
            }
            
            public virtual string IsikKorternr {
                get {
                    return this.@__isikKorternr;
                }
                set {
                    this.@__isikKorternr = value;
                }
            }
            
            public virtual string IsikViimatipar {
                get {
                    return this.@__isikViimatipar;
                }
                set {
                    this.@__isikViimatipar = value;
                }
            }
            
            public virtual string IsikMperenm {
                get {
                    return this.@__isikMperenm;
                }
                set {
                    this.@__isikMperenm = value;
                }
            }
            
            public virtual string IsikMeesnm {
                get {
                    return this.@__isikMeesnm;
                }
                set {
                    this.@__isikMeesnm = value;
                }
            }
            
            public virtual string IsikIsikKoda {
                get {
                    return this.@__isikIsikKoda;
                }
                set {
                    this.@__isikIsikKoda = value;
                }
            }
            
            public virtual string IsikSaabEestisse {
                get {
                    return this.@__isikSaabEestisse;
                }
                set {
                    this.@__isikSaabEestisse = value;
                }
            }
            
            public virtual string IsikPostiindeks {
                get {
                    return this.@__isikPostiindeks;
                }
                set {
                    this.@__isikPostiindeks = value;
                }
            }
            
            public virtual string IsikElukRegpe {
                get {
                    return this.@__isikElukRegpe;
                }
                set {
                    this.@__isikElukRegpe = value;
                }
            }
            
            public virtual string IsikIsikuStaatus {
                get {
                    return this.@__isikIsikuStaatus;
                }
                set {
                    this.@__isikIsikuStaatus = value;
                }
            }
            
            public virtual string IsikKirjeStaatus {
                get {
                    return this.@__isikKirjeStaatus;
                }
                set {
                    this.@__isikKirjeStaatus = value;
                }
            }
            
            public virtual string IsikSynniaeg {
                get {
                    return this.@__isikSynniaeg;
                }
                set {
                    this.@__isikSynniaeg = value;
                }
            }
            
            public virtual string IsikSurmaaeg {
                get {
                    return this.@__isikSurmaaeg;
                }
                set {
                    this.@__isikSurmaaeg = value;
                }
            }
        }
        
        public interface IIsikType {
            
            string IsikIsikukood {
                get;
                set;
            }
            
            string IsikPerenimi {
                get;
                set;
            }
            
            string IsikEesnimi {
                get;
                set;
            }
            
            string IsikVallakd {
                get;
                set;
            }
            
            string IsikKylakd {
                get;
                set;
            }
            
            string IsikTanavakd {
                get;
                set;
            }
            
            string IsikTanavanm {
                get;
                set;
            }
            
            string IsikMajanr {
                get;
                set;
            }
            
            string IsikKorternr {
                get;
                set;
            }
            
            string IsikViimatipar {
                get;
                set;
            }
            
            string IsikMperenm {
                get;
                set;
            }
            
            string IsikMeesnm {
                get;
                set;
            }
            
            string IsikIsikKoda {
                get;
                set;
            }
            
            string IsikSaabEestisse {
                get;
                set;
            }
            
            string IsikPostiindeks {
                get;
                set;
            }
            
            string IsikElukRegpe {
                get;
                set;
            }
            
            string IsikIsikuStaatus {
                get;
                set;
            }
            
            string IsikKirjeStaatus {
                get;
                set;
            }
            
            string IsikSynniaeg {
                get;
                set;
            }
            
            string IsikSurmaaeg {
                get;
                set;
            }
        }
        
        public partial class DokType : IDokType {
            
            private string @__dokIsikIskood;
            
            private string @__dokDokIskood;
            
            private string @__dokDokPerenimi;
            
            private string @__dokDokEesnimi;
            
            private string @__dokDokOsalus;
            
            private string @__dokTeisedIsikIskood;
            
            private string @__dokTeisedDokIskood;
            
            private string @__dokTeisedDokPerenimi;
            
            private string @__dokTeisedDokEesnimi;
            
            private string @__dokTeisedDokOsalus;
            
            private string @__dokDokNimi;
            
            private string @__dokDokSeeria;
            
            private string @__dokDokNr;
            
            private string @__dokDokKehtivAlates;
            
            private string @__dokDokKehtivKuni;
            
            private string @__dokDokKp;
            
            public DokType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public DokType(
                        string @dokIsikIskood, 
                        string @dokDokIskood, 
                        string @dokDokPerenimi, 
                        string @dokDokEesnimi, 
                        string @dokDokOsalus, 
                        string @dokTeisedIsikIskood, 
                        string @dokTeisedDokIskood, 
                        string @dokTeisedDokPerenimi, 
                        string @dokTeisedDokEesnimi, 
                        string @dokTeisedDokOsalus, 
                        string @dokDokNimi, 
                        string @dokDokSeeria, 
                        string @dokDokNr, 
                        string @dokDokKehtivAlates, 
                        string @dokDokKehtivKuni, 
                        string @dokDokKp) {
                this.@__dokIsikIskood = @dokIsikIskood;
                this.@__dokDokIskood = @dokDokIskood;
                this.@__dokDokPerenimi = @dokDokPerenimi;
                this.@__dokDokEesnimi = @dokDokEesnimi;
                this.@__dokDokOsalus = @dokDokOsalus;
                this.@__dokTeisedIsikIskood = @dokTeisedIsikIskood;
                this.@__dokTeisedDokIskood = @dokTeisedDokIskood;
                this.@__dokTeisedDokPerenimi = @dokTeisedDokPerenimi;
                this.@__dokTeisedDokEesnimi = @dokTeisedDokEesnimi;
                this.@__dokTeisedDokOsalus = @dokTeisedDokOsalus;
                this.@__dokDokNimi = @dokDokNimi;
                this.@__dokDokSeeria = @dokDokSeeria;
                this.@__dokDokNr = @dokDokNr;
                this.@__dokDokKehtivAlates = @dokDokKehtivAlates;
                this.@__dokDokKehtivKuni = @dokDokKehtivKuni;
                this.@__dokDokKp = @dokDokKp;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected DokType(IDokType @dokType) {
                this.@__dokIsikIskood = @dokType.DokIsikIskood;
                this.@__dokDokIskood = @dokType.DokDokIskood;
                this.@__dokDokPerenimi = @dokType.DokDokPerenimi;
                this.@__dokDokEesnimi = @dokType.DokDokEesnimi;
                this.@__dokDokOsalus = @dokType.DokDokOsalus;
                this.@__dokTeisedIsikIskood = @dokType.DokTeisedIsikIskood;
                this.@__dokTeisedDokIskood = @dokType.DokTeisedDokIskood;
                this.@__dokTeisedDokPerenimi = @dokType.DokTeisedDokPerenimi;
                this.@__dokTeisedDokEesnimi = @dokType.DokTeisedDokEesnimi;
                this.@__dokTeisedDokOsalus = @dokType.DokTeisedDokOsalus;
                this.@__dokDokNimi = @dokType.DokDokNimi;
                this.@__dokDokSeeria = @dokType.DokDokSeeria;
                this.@__dokDokNr = @dokType.DokDokNr;
                this.@__dokDokKehtivAlates = @dokType.DokDokKehtivAlates;
                this.@__dokDokKehtivKuni = @dokType.DokDokKehtivKuni;
                this.@__dokDokKp = @dokType.DokDokKp;
            }
            
            public virtual string DokIsikIskood {
                get {
                    return this.@__dokIsikIskood;
                }
                set {
                    this.@__dokIsikIskood = value;
                }
            }
            
            public virtual string DokDokIskood {
                get {
                    return this.@__dokDokIskood;
                }
                set {
                    this.@__dokDokIskood = value;
                }
            }
            
            public virtual string DokDokPerenimi {
                get {
                    return this.@__dokDokPerenimi;
                }
                set {
                    this.@__dokDokPerenimi = value;
                }
            }
            
            public virtual string DokDokEesnimi {
                get {
                    return this.@__dokDokEesnimi;
                }
                set {
                    this.@__dokDokEesnimi = value;
                }
            }
            
            public virtual string DokDokOsalus {
                get {
                    return this.@__dokDokOsalus;
                }
                set {
                    this.@__dokDokOsalus = value;
                }
            }
            
            public virtual string DokTeisedIsikIskood {
                get {
                    return this.@__dokTeisedIsikIskood;
                }
                set {
                    this.@__dokTeisedIsikIskood = value;
                }
            }
            
            public virtual string DokTeisedDokIskood {
                get {
                    return this.@__dokTeisedDokIskood;
                }
                set {
                    this.@__dokTeisedDokIskood = value;
                }
            }
            
            public virtual string DokTeisedDokPerenimi {
                get {
                    return this.@__dokTeisedDokPerenimi;
                }
                set {
                    this.@__dokTeisedDokPerenimi = value;
                }
            }
            
            public virtual string DokTeisedDokEesnimi {
                get {
                    return this.@__dokTeisedDokEesnimi;
                }
                set {
                    this.@__dokTeisedDokEesnimi = value;
                }
            }
            
            public virtual string DokTeisedDokOsalus {
                get {
                    return this.@__dokTeisedDokOsalus;
                }
                set {
                    this.@__dokTeisedDokOsalus = value;
                }
            }
            
            public virtual string DokDokNimi {
                get {
                    return this.@__dokDokNimi;
                }
                set {
                    this.@__dokDokNimi = value;
                }
            }
            
            public virtual string DokDokSeeria {
                get {
                    return this.@__dokDokSeeria;
                }
                set {
                    this.@__dokDokSeeria = value;
                }
            }
            
            public virtual string DokDokNr {
                get {
                    return this.@__dokDokNr;
                }
                set {
                    this.@__dokDokNr = value;
                }
            }
            
            public virtual string DokDokKehtivAlates {
                get {
                    return this.@__dokDokKehtivAlates;
                }
                set {
                    this.@__dokDokKehtivAlates = value;
                }
            }
            
            public virtual string DokDokKehtivKuni {
                get {
                    return this.@__dokDokKehtivKuni;
                }
                set {
                    this.@__dokDokKehtivKuni = value;
                }
            }
            
            public virtual string DokDokKp {
                get {
                    return this.@__dokDokKp;
                }
                set {
                    this.@__dokDokKp = value;
                }
            }
        }
        
        public interface IDokType {
            
            string DokIsikIskood {
                get;
                set;
            }
            
            string DokDokIskood {
                get;
                set;
            }
            
            string DokDokPerenimi {
                get;
                set;
            }
            
            string DokDokEesnimi {
                get;
                set;
            }
            
            string DokDokOsalus {
                get;
                set;
            }
            
            string DokTeisedIsikIskood {
                get;
                set;
            }
            
            string DokTeisedDokIskood {
                get;
                set;
            }
            
            string DokTeisedDokPerenimi {
                get;
                set;
            }
            
            string DokTeisedDokEesnimi {
                get;
                set;
            }
            
            string DokTeisedDokOsalus {
                get;
                set;
            }
            
            string DokDokNimi {
                get;
                set;
            }
            
            string DokDokSeeria {
                get;
                set;
            }
            
            string DokDokNr {
                get;
                set;
            }
            
            string DokDokKehtivAlates {
                get;
                set;
            }
            
            string DokDokKehtivKuni {
                get;
                set;
            }
            
            string DokDokKp {
                get;
                set;
            }
        }
    }
}
